/*
 * SeguridadDAOImpl.java
 *
 * Created on 13 de noviembre de 2007, 20:02
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.fiuba.aterrizar.servidor.dal.dao.impl;

import com.fiuba.aterrizar.servidor.conf.ConnectionFactory;
import com.fiuba.aterrizar.servidor.dal.dao.SeguridadDAO;
import com.fiuba.aterrizar.servidor.domain.Usuario;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author Demian
 */
public class SeguridadDAOImpl implements SeguridadDAO {
   
    public Usuario find(String idUsuario, String passw){
        Connection conn = null;
        ConnectionFactory factory = ConnectionFactory.getInstance();
        PreparedStatement stm = null;
        try {
            conn = factory.getConnection();            
            stm = conn.prepareStatement("Select * from USUARIO where id=? and passw=?");            
            stm.setString(1,idUsuario);
            stm.setString(2, passw);
            
            ResultSet rs = stm.executeQuery();
            if (rs.next()){
                //coincide la busqueda con todos los registros del usuario. sino hay que
                //obtenerlos del ResultSet. Ej: rs.getString(1) eso me da el idUsuario
                Usuario usuario = new Usuario();
                usuario.setId(idUsuario);
                usuario.setPassw(passw);
                
                return usuario;
            }
            
            return null;
        } catch (SQLException ex) {
            throw new RuntimeException("Error al obtener el usuario",ex);
        } finally {
            factory.closeStatement(stm);
            factory.closeConnection(conn);
        }
    }
    
}
